treeview: Delay computing fixed height
authorBenjamin Otte <otte@redhat.com>
Sun, 25 Nov 2012 23:06:40 +0000 (00:06 +0100)
committerBenjamin Otte <otte@redhat.com>
Sun, 25 Nov 2012 23:09:35 +0000 (00:09 +0100)
In the setter, we only set fixed height mode and queue a revalidation of
the row heights.

https://bugzilla.gnome.org/show_bug.cgi?id=687816

gtk/gtktreeview.c

index 1bba795a1dc54ce62e9b103d83923a56476c7fd6..d651bd62b2c31a38c16016e490f67f3f99f0c2b5 100644 (file)
@@ -8138,9 +8138,6 @@ gtk_tree_view_set_fixed_height_mode (GtkTreeView *tree_view,
     {
       tree_view->priv->fixed_height_mode = 0;
       tree_view->priv->fixed_height = -1;
-
-      /* force a revalidation */
-      install_presize_handler (tree_view);
     }
   else 
     {
@@ -8159,11 +8156,11 @@ gtk_tree_view_set_fixed_height_mode (GtkTreeView *tree_view,
       
       tree_view->priv->fixed_height_mode = 1;
       tree_view->priv->fixed_height = -1;
-      
-      if (tree_view->priv->tree)
-       initialize_fixed_height_mode (tree_view);
     }
 
+  /* force a revalidation */
+  install_presize_handler (tree_view);
+
   g_object_notify (G_OBJECT (tree_view), "fixed-height-mode");
 }